iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 21
0
自我挑戰組

Access VBA 之 iT管理實做系列 第 21

Access VBA 之 iT管理實做Day21: 整合外部程式-AutoHotKey

  • 分享至 

  • xImage
  •  

AutoHotKey(簡稱AHK)與AutoIt兩者都是很強勁的自動化腳本軟體,筆者拿AHK用來補足Access VBA本身的一些問題,透過把程式碼寫在資料檔內,需要呼叫時再寫入暫存使用的方式,來保存與呼叫AHK程式。

AHK : AutoHotkey

Function AHK(strConfigName As String, _
             Optional strConfigType = "Config", _
             Optional bnSilent As Boolean = True, _
             Optional bnWaitOnReturn As Boolean = True, _
             Optional windowStyle As Integer = 1)
    '從設定檔中撈出AHK程式,寫入暫存後執行
    'strConfigName 設定名稱
    'strConfigType 設定的地方: "Config","ConfigCloud" , "ConfigLocal"
    
    Dim strData As String
    Dim strFile As String
    
    strData = Application.Run(strConfigType, strConfigName, True)
    strFile = Environ("TEMP") & "\TEMP_" & CleanString(strConfigName) & ".ahk"
    
    WriteToUTF8 strData, strFile, False
    RunCMD strFile, bnSilent, bnWaitOnReturn, windowStyle
    

End Function

測試程式:

Sub AHK_TEST()
    Dim strConfigName As String
    strConfigName = "AHK_Sleep"
    
    ConfigSave strConfigName, "", "sleep,1000"
    
    AHK (strConfigName)

End Sub

備註:其中保存與呼叫的方式,都是透過之前「Access VBA 的眉眉角角Day8:於VBA中的設定值存取方法」介紹的ConfigSave與Config方式來處理。

參考網址:
AutoIt
https://www.autoitscript.com/site/

AutoHotKey
https://autohotkey.com/


上一篇
Access VBA 之 iT管理實做Day20: 自定義程式-確認數值無值
下一篇
Access VBA 之 iT管理實做Day22: 資料轉出成文字檔
系列文
Access VBA 之 iT管理實做30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言